Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Displaying Raw • Download


meshchatx/src/frontend/js/MicronParser.js 8d5bef20972771dafba705d9ab939902715543db (8d5bef20) Text, 26.18 KB

T8b949e/**
* Micron Parser JavaScript implementation
*
* micron-parser.js is based on MicronParser.py from NomadNet:
* https://raw.githubusercontent.com/markqvist/NomadNet/refs/heads/master/nomadnet/ui/textui/MicronParser.py
*
* Documentation for the Micron markdown format can be found here:
* https://raw.githubusercontent.com/markqvist/NomadNet/refs/heads/master/nomadnet/ui/textui/Guide.py
*/
Tff7b72class Te6edf3MicronParser Tb4b4b4{
Tff7b72constructorTb4b4b4(Te6edf3darkTheme Tff7b72= Tff7b72trueTb4b4b4) Tb4b4b4{
Tff7b72thisTb4b4b4.Te6edf3darkTheme Tff7b72= Te6edf3darkThemeTb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3DEFAULT_FG_DARK Tff7b72= Ta5d6ff"ddd"Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3DEFAULT_FG_LIGHT Tff7b72= Ta5d6ff"222"Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BG Tff7b72= Ta5d6ff"default"Tb4b4b4;

Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLES Tff7b72= Tff7b72nullTb4b4b4;

Tff7b72thisTb4b4b4.Te6edf3STYLES_DARK Tff7b72= Tb4b4b4{
Te6edf3plainTff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Tff7b72thisTb4b4b4.Te6edf3DEFAULT_FG_DARKTb4b4b4, Te6edf3bgTff7b72: Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BGTb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Te6edf3heading1Tff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Ta5d6ff"222"Tb4b4b4, Te6edf3bgTff7b72: Ta5d6ff"bbb"Tb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Te6edf3heading2Tff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Ta5d6ff"111"Tb4b4b4, Te6edf3bgTff7b72: Ta5d6ff"999"Tb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Te6edf3heading3Tff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Ta5d6ff"000"Tb4b4b4, Te6edf3bgTff7b72: Ta5d6ff"777"Tb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4;

Tff7b72thisTb4b4b4.Te6edf3STYLES_LIGHT Tff7b72= Tb4b4b4{
Te6edf3plainTff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Tff7b72thisTb4b4b4.Te6edf3DEFAULT_FG_LIGHTTb4b4b4, Te6edf3bgTff7b72: Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BGTb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Te6edf3heading1Tff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Ta5d6ff"000"Tb4b4b4, Te6edf3bgTff7b72: Ta5d6ff"777"Tb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Te6edf3heading2Tff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Ta5d6ff"111"Tb4b4b4, Te6edf3bgTff7b72: Ta5d6ff"aaa"Tb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Te6edf3heading3Tff7b72: Tb4b4b4{ Te6edf3fgTff7b72: Ta5d6ff"222"Tb4b4b4, Te6edf3bgTff7b72: Ta5d6ff"ccc"Tb4b4b4, Te6edf3boldTff7b72: Tff7b72falseTb4b4b4, Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4, Te6edf3italicTff7b72: Tff7b72false Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4;

Tff7b72if Tb4b4b4(Tff7b72thisTb4b4b4.Te6edf3darkThemeTb4b4b4) Tb4b4b4{
Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLES Tff7b72= Tff7b72thisTb4b4b4.Te6edf3STYLES_DARKTb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLES Tff7b72= Tff7b72thisTb4b4b4.Te6edf3STYLES_LIGHTTb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72static Te6edf3formatNomadnetworkUrlTb4b4b4(Te6edf3urlTb4b4b4) Tb4b4b4{
Tff7b72return Ta5d6ff`Ta5d6ffnomadnetwork://Tffd700${Te6edf3urlTffd700}Ta5d6ff`Tb4b4b4;
Tb4b4b4}

Te6edf3convertMicronToHtmlTb4b4b4(Te6edf3markupTb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3html Tff7b72= Ta5d6ff""Tb4b4b4;

Tff7b72let Te6edf3state Tff7b72= Tb4b4b4{
Te6edf3literalTff7b72: Tff7b72falseTb4b4b4,
Te6edf3depthTff7b72: T79c0ff0Tb4b4b4,
Te6edf3fg_colorTff7b72: Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4.Te6edf3plainTb4b4b4.Te6edf3fgTb4b4b4,
Te6edf3bg_colorTff7b72: Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BGTb4b4b4,
Te6edf3formattingTff7b72: Tb4b4b4{
Te6edf3boldTff7b72: Tff7b72falseTb4b4b4,
Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4,
Te6edf3italicTff7b72: Tff7b72falseTb4b4b4,
Te6edf3strikethroughTff7b72: Tff7b72falseTb4b4b4,
Tb4b4b4}Tb4b4b4,
Te6edf3default_alignTff7b72: Ta5d6ff"left"Tb4b4b4,
Te6edf3alignTff7b72: Ta5d6ff"left"Tb4b4b4,
Te6edf3radio_groupsTff7b72: Tb4b4b4{Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4;

Tff7b72const Te6edf3lines Tff7b72= Te6edf3markupTb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff"\n"Tb4b4b4)Tb4b4b4;

Tff7b72for Tb4b4b4(Tff7b72let Te6edf3line Tff7b72of Te6edf3linesTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3lineOutput Tff7b72= Tff7b72thisTb4b4b4.Te6edf3parseLineTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3lineOutput Tff7b72&& Te6edf3lineOutputTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72for Tb4b4b4(Tff7b72let Te6edf3el Tff7b72of Te6edf3lineOutputTb4b4b4) Tb4b4b4{
Te6edf3html Tff7b72+= Te6edf3elTb4b4b4.Te6edf3outerHTMLTb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3html Tff7b72+= Ta5d6ff"<br>"Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72return Te6edf3htmlTb4b4b4;
Tb4b4b4}

Te6edf3parseToHtmlTb4b4b4(Te6edf3markupTb4b4b4) Tb4b4b4{
T8b949e// Create a fragment to hold all the Micron output
Tff7b72const Te6edf3fragment Tff7b72= Tffa657documentTb4b4b4.Te6edf3createDocumentFragmentTb4b4b4(Tb4b4b4)Tb4b4b4;

Tff7b72let Te6edf3state Tff7b72= Tb4b4b4{
Te6edf3literalTff7b72: Tff7b72falseTb4b4b4,
Te6edf3depthTff7b72: T79c0ff0Tb4b4b4,
Te6edf3fg_colorTff7b72: Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4.Te6edf3plainTb4b4b4.Te6edf3fgTb4b4b4,
Te6edf3bg_colorTff7b72: Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BGTb4b4b4,
Te6edf3formattingTff7b72: Tb4b4b4{
Te6edf3boldTff7b72: Tff7b72falseTb4b4b4,
Te6edf3underlineTff7b72: Tff7b72falseTb4b4b4,
Te6edf3italicTff7b72: Tff7b72falseTb4b4b4,
Te6edf3strikethroughTff7b72: Tff7b72falseTb4b4b4,
Tb4b4b4}Tb4b4b4,
Te6edf3default_alignTff7b72: Ta5d6ff"left"Tb4b4b4,
Te6edf3alignTff7b72: Ta5d6ff"left"Tb4b4b4,
Te6edf3radio_groupsTff7b72: Tb4b4b4{Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4;

Tff7b72const Te6edf3lines Tff7b72= Te6edf3markupTb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff"\n"Tb4b4b4)Tb4b4b4;

Tff7b72for Tb4b4b4(Tff7b72let Te6edf3line Tff7b72of Te6edf3linesTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3lineOutput Tff7b72= Tff7b72thisTb4b4b4.Te6edf3parseLineTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3lineOutput Tff7b72&& Te6edf3lineOutputTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72for Tb4b4b4(Tff7b72let Te6edf3el Tff7b72of Te6edf3lineOutputTb4b4b4) Tb4b4b4{
Te6edf3fragmentTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3elTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3fragmentTb4b4b4.Te6edf3appendChildTb4b4b4(Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"br"Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72return Te6edf3fragmentTb4b4b4;
Tb4b4b4}

Te6edf3parseLineTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3stateTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
T8b949e// Check literals toggle
Tff7b72if Tb4b4b4(Te6edf3line Tff7b72=== Ta5d6ff"`="Tb4b4b4) Tb4b4b4{
Te6edf3stateTb4b4b4.Te6edf3literal Tff7b72= Tff7b72!Te6edf3stateTb4b4b4.Te6edf3literalTb4b4b4;
Tff7b72return Tff7b72nullTb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Tff7b72!Te6edf3stateTb4b4b4.Te6edf3literalTb4b4b4) Tb4b4b4{
T8b949e// Comments
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4[T79c0ff0Tb4b4b4] Tff7b72=== Ta5d6ff"#"Tb4b4b4) Tb4b4b4{
Tff7b72return Tff7b72nullTb4b4b4;
Tb4b4b4}

T8b949e// Reset section depth
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4[T79c0ff0Tb4b4b4] Tff7b72=== Ta5d6ff"<"Tb4b4b4) Tb4b4b4{
Te6edf3stateTb4b4b4.Te6edf3depth Tff7b72= T79c0ff0Tb4b4b4;
Tff7b72return Tff7b72thisTb4b4b4.Te6edf3parseLineTb4b4b4(Te6edf3lineTb4b4b4.Te6edf3sliceTb4b4b4(T79c0ff1Tb4b4b4)Tb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tb4b4b4}

T8b949e// Section headings
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4[T79c0ff0Tb4b4b4] Tff7b72=== Ta5d6ff">"Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3i Tff7b72= T79c0ff0Tb4b4b4;
Tff7b72while Tb4b4b4(Te6edf3i Tff7b72< Te6edf3lineTb4b4b4.Te6edf3length Tff7b72&& Te6edf3lineTb4b4b4[Te6edf3iTb4b4b4] Tff7b72=== Ta5d6ff">"Tb4b4b4) Tb4b4b4{
Te6edf3iTff7b72++Tb4b4b4;
Tb4b4b4}
Te6edf3stateTb4b4b4.Te6edf3depth Tff7b72= Te6edf3iTb4b4b4;
Tff7b72let Te6edf3headingLine Tff7b72= Te6edf3lineTb4b4b4.Te6edf3sliceTb4b4b4(Te6edf3iTb4b4b4)Tb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3headingLineTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
T8b949e// apply heading style if it exists
Tff7b72let Te6edf3style Tff7b72= Tff7b72nullTb4b4b4;
Tff7b72let Te6edf3wanted_style Tff7b72= Ta5d6ff"heading" Tff7b72+ Te6edf3iTb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4[Te6edf3wanted_styleTb4b4b4]Tb4b4b4) Tb4b4b4{
Te6edf3style Tff7b72= Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4[Te6edf3wanted_styleTb4b4b4]Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3style Tff7b72= Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4.Te6edf3plainTb4b4b4;
Tb4b4b4}

Tff7b72const Te6edf3latched_style Tff7b72= Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3styleToStateTb4b4b4(Te6edf3styleTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;

Tff7b72let Te6edf3outputParts Tff7b72= Tff7b72thisTb4b4b4.Te6edf3makeOutputTb4b4b4(Te6edf3stateTb4b4b4, Te6edf3headingLineTb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3styleToStateTb4b4b4(Te6edf3latched_styleTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;

T8b949e// wrap in a heading container
Tff7b72if Tb4b4b4(Te6edf3outputParts Tff7b72&& Te6edf3outputPartsTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3div Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"div"Tb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applyAlignmentTb4b4b4(Te6edf3divTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applySectionIndentTb4b4b4(Te6edf3divTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
T8b949e// merge text nodes
Tff7b72thisTb4b4b4.Te6edf3appendOutputTb4b4b4(Te6edf3divTb4b4b4, Te6edf3outputPartsTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72return Tb4b4b4[Te6edf3divTb4b4b4]Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Tff7b72return Tff7b72nullTb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72else Tb4b4b4{
Tff7b72return Tff7b72nullTb4b4b4;
Tb4b4b4}
Tb4b4b4}

T8b949e// horizontal dividers
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4[T79c0ff0Tb4b4b4] Tff7b72=== Ta5d6ff"-"Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3hr Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"hr"Tb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applySectionIndentTb4b4b4(Te6edf3hrTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72return Tb4b4b4[Te6edf3hrTb4b4b4]Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72let Te6edf3outputParts Tff7b72= Tff7b72thisTb4b4b4.Te6edf3makeOutputTb4b4b4(Te6edf3stateTb4b4b4, Te6edf3lineTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3outputPartsTb4b4b4) Tb4b4b4{
T8b949e// outputParts can contain text (tuple) and special objects (fields/checkbox)
T8b949e// construct a single line container
Tff7b72let Te6edf3container Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"div"Tb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applyAlignmentTb4b4b4(Te6edf3containerTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applySectionIndentTb4b4b4(Te6edf3containerTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3appendOutputTb4b4b4(Te6edf3containerTb4b4b4, Te6edf3outputPartsTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72return Tb4b4b4[Te6edf3containerTb4b4b4]Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
T8b949e// Just empty line
Tff7b72return Tb4b4b4[Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"br"Tb4b4b4)Tb4b4b4]Tb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72else Tb4b4b4{
T8b949e// Empty line
Tff7b72return Tb4b4b4[Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"br"Tb4b4b4)Tb4b4b4]Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Te6edf3applyAlignmentTb4b4b4(Te6edf3elTb4b4b4, Te6edf3stateTb4b4b4) Tb4b4b4{
T8b949e// use CSS text-align for alignment
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3textAlign Tff7b72= Te6edf3stateTb4b4b4.Te6edf3align Tff7b72|| Ta5d6ff"left"Tb4b4b4;
Tb4b4b4}

Te6edf3applySectionIndentTb4b4b4(Te6edf3elTb4b4b4, Te6edf3stateTb4b4b4) Tb4b4b4{
T8b949e// indent by state.depth
Tff7b72let Te6edf3indent Tff7b72= Tb4b4b4(Te6edf3stateTb4b4b4.Te6edf3depth Tff7b72- T79c0ff1Tb4b4b4) Tff7b72* T79c0ff2Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3indent Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3marginLeft Tff7b72= Te6edf3indent Tff7b72* T79c0ff10 Tff7b72+ Ta5d6ff"px"Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

T8b949e// convert current state to a style object
Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4) Tb4b4b4{
Tff7b72return Tb4b4b4{
Te6edf3fgTff7b72: Te6edf3stateTb4b4b4.Te6edf3fg_colorTb4b4b4,
Te6edf3bgTff7b72: Te6edf3stateTb4b4b4.Te6edf3bg_colorTb4b4b4,
Te6edf3boldTff7b72: Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3boldTb4b4b4,
Te6edf3underlineTff7b72: Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3underlineTb4b4b4,
Te6edf3italicTff7b72: Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3italicTb4b4b4,
Tb4b4b4}Tb4b4b4;
Tb4b4b4}

Te6edf3styleToStateTb4b4b4(Te6edf3styleTb4b4b4, Te6edf3stateTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3fg Tff7b72!== Tff7b72undefined Tff7b72&& Te6edf3styleTb4b4b4.Te6edf3fg Tff7b72!== Tff7b72nullTb4b4b4) Te6edf3stateTb4b4b4.Te6edf3fg_color Tff7b72= Te6edf3styleTb4b4b4.Te6edf3fgTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3bg Tff7b72!== Tff7b72undefined Tff7b72&& Te6edf3styleTb4b4b4.Te6edf3bg Tff7b72!== Tff7b72nullTb4b4b4) Te6edf3stateTb4b4b4.Te6edf3bg_color Tff7b72= Te6edf3styleTb4b4b4.Te6edf3bgTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3bold Tff7b72!== Tff7b72undefined Tff7b72&& Te6edf3styleTb4b4b4.Te6edf3bold Tff7b72!== Tff7b72nullTb4b4b4) Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3bold Tff7b72= Te6edf3styleTb4b4b4.Te6edf3boldTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3underline Tff7b72!== Tff7b72undefined Tff7b72&& Te6edf3styleTb4b4b4.Te6edf3underline Tff7b72!== Tff7b72nullTb4b4b4) Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3underline Tff7b72= Te6edf3styleTb4b4b4.Te6edf3underlineTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3italic Tff7b72!== Tff7b72undefined Tff7b72&& Te6edf3styleTb4b4b4.Te6edf3italic Tff7b72!== Tff7b72nullTb4b4b4) Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3italic Tff7b72= Te6edf3styleTb4b4b4.Te6edf3italicTb4b4b4;
Tb4b4b4}

Te6edf3appendOutputTb4b4b4(Te6edf3containerTb4b4b4, Te6edf3partsTb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3currentSpan Tff7b72= Tff7b72nullTb4b4b4;
Tff7b72let Te6edf3currentStyle Tff7b72= Tff7b72nullTb4b4b4;

Tff7b72const Te6edf3flushSpan Tff7b72= Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3currentSpanTb4b4b4) Tb4b4b4{
Te6edf3containerTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3currentSpanTb4b4b4)Tb4b4b4;
Te6edf3currentSpan Tff7b72= Tff7b72nullTb4b4b4;
Te6edf3currentStyle Tff7b72= Tff7b72nullTb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4;

Tff7b72for Tb4b4b4(Tff7b72let Te6edf3p Tff7b72of Te6edf3partsTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72typeof Te6edf3p Tff7b72=== Ta5d6ff"string"Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3span Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"span"Tb4b4b4)Tb4b4b4;
Te6edf3spanTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3pTb4b4b4;
Te6edf3containerTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3spanTb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Tffa657ArrayTb4b4b4.Te6edf3isArrayTb4b4b4(Te6edf3pTb4b4b4) Tff7b72&& Te6edf3pTb4b4b4.Te6edf3length Tff7b72=== T79c0ff2Tb4b4b4) Tb4b4b4{
T8b949e// tuple: [styleSpec, text]
Tff7b72let Tb4b4b4[Te6edf3styleSpecTb4b4b4, Te6edf3textTb4b4b4] Tff7b72= Te6edf3pTb4b4b4;
T8b949e// if different style, flush currentSpan
Tff7b72if Tb4b4b4(Tff7b72!Tff7b72thisTb4b4b4.Te6edf3stylesEqualTb4b4b4(Te6edf3styleSpecTb4b4b4, Te6edf3currentStyleTb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3flushSpanTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3currentSpan Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"span"Tb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applyStyleToElementTb4b4b4(Te6edf3currentSpanTb4b4b4, Te6edf3styleSpecTb4b4b4)Tb4b4b4;
Te6edf3currentStyle Tff7b72= Te6edf3styleSpecTb4b4b4;
Tb4b4b4}
Te6edf3currentSpanTb4b4b4.Te6edf3textContent Tff7b72+= Te6edf3textTb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3p Tff7b72&& Tff7b72typeof Te6edf3p Tff7b72=== Ta5d6ff"object"Tb4b4b4) Tb4b4b4{
T8b949e// field, checkbox, radio, link
Te6edf3flushSpanTb4b4b4(Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3type Tff7b72=== Ta5d6ff"field"Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3input Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"input"Tb4b4b4)Tb4b4b4;
Te6edf3inputTb4b4b4.Te6edf3type Tff7b72= Te6edf3pTb4b4b4.Te6edf3masked Tff7b72? Ta5d6ff"password" Tff7b72: Ta5d6ff"text"Tb4b4b4;
Te6edf3inputTb4b4b4.Te6edf3name Tff7b72= Te6edf3pTb4b4b4.Te6edf3nameTb4b4b4;
Te6edf3inputTb4b4b4.Te6edf3setAttributeTb4b4b4(Ta5d6ff"value"Tb4b4b4, Te6edf3pTb4b4b4.Te6edf3dataTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3widthTb4b4b4) Tb4b4b4{
Te6edf3inputTb4b4b4.Te6edf3size Tff7b72= Te6edf3pTb4b4b4.Te6edf3widthTb4b4b4;
Tb4b4b4}
Tff7b72thisTb4b4b4.Te6edf3applyStyleToElementTb4b4b4(Te6edf3inputTb4b4b4, Tff7b72thisTb4b4b4.Te6edf3styleFromStateTb4b4b4(Te6edf3pTb4b4b4.Te6edf3styleTb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3containerTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3inputTb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3type Tff7b72=== Ta5d6ff"checkbox"Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3label Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"label"Tb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3cb Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"input"Tb4b4b4)Tb4b4b4;
Te6edf3cbTb4b4b4.Te6edf3type Tff7b72= Ta5d6ff"checkbox"Tb4b4b4;
Te6edf3cbTb4b4b4.Te6edf3name Tff7b72= Te6edf3pTb4b4b4.Te6edf3nameTb4b4b4;
Te6edf3cbTb4b4b4.Te6edf3value Tff7b72= Te6edf3pTb4b4b4.Te6edf3valueTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3precheckedTb4b4b4) Te6edf3cbTb4b4b4.Te6edf3setAttributeTb4b4b4(Ta5d6ff"checked"Tb4b4b4, Tff7b72trueTb4b4b4)Tb4b4b4;
Te6edf3labelTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3cbTb4b4b4)Tb4b4b4;
Te6edf3labelTb4b4b4.Te6edf3appendChildTb4b4b4(Tffa657documentTb4b4b4.Te6edf3createTextNodeTb4b4b4(Ta5d6ff" " Tff7b72+ Te6edf3pTb4b4b4.Te6edf3labelTb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applyStyleToElementTb4b4b4(Te6edf3labelTb4b4b4, Tff7b72thisTb4b4b4.Te6edf3styleFromStateTb4b4b4(Te6edf3pTb4b4b4.Te6edf3styleTb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3containerTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3labelTb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3type Tff7b72=== Ta5d6ff"radio"Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3label Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"label"Tb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3rb Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"input"Tb4b4b4)Tb4b4b4;
Te6edf3rbTb4b4b4.Te6edf3type Tff7b72= Ta5d6ff"radio"Tb4b4b4;
Te6edf3rbTb4b4b4.Te6edf3name Tff7b72= Te6edf3pTb4b4b4.Te6edf3nameTb4b4b4;
Te6edf3rbTb4b4b4.Te6edf3value Tff7b72= Te6edf3pTb4b4b4.Te6edf3valueTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3precheckedTb4b4b4) Te6edf3rbTb4b4b4.Te6edf3setAttributeTb4b4b4(Ta5d6ff"checked"Tb4b4b4, Tff7b72trueTb4b4b4)Tb4b4b4;
Te6edf3labelTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3rbTb4b4b4)Tb4b4b4;
Te6edf3labelTb4b4b4.Te6edf3appendChildTb4b4b4(Tffa657documentTb4b4b4.Te6edf3createTextNodeTb4b4b4(Ta5d6ff" " Tff7b72+ Te6edf3pTb4b4b4.Te6edf3labelTb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applyStyleToElementTb4b4b4(Te6edf3labelTb4b4b4, Tff7b72thisTb4b4b4.Te6edf3styleFromStateTb4b4b4(Te6edf3pTb4b4b4.Te6edf3styleTb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3containerTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3labelTb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3type Tff7b72=== Ta5d6ff"link"Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3directURL Tff7b72= Te6edf3pTb4b4b4.Te6edf3urlTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"nomadnetwork://"Tb4b4b4, Ta5d6ff""Tb4b4b4)Tb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"lxmf://"Tb4b4b4, Ta5d6ff""Tb4b4b4)Tb4b4b4;
T8b949e// use p.url as is for the href
Tff7b72const Te6edf3formattedUrl Tff7b72= Te6edf3pTb4b4b4.Te6edf3urlTb4b4b4;

Tff7b72let Te6edf3a Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"a"Tb4b4b4)Tb4b4b4;
Te6edf3aTb4b4b4.Te6edf3href Tff7b72= Te6edf3formattedUrlTb4b4b4;
Te6edf3aTb4b4b4.Te6edf3title Tff7b72= Te6edf3formattedUrlTb4b4b4;

Tff7b72let Te6edf3fieldsToSubmit Tff7b72= Tb4b4b4[Tb4b4b4]Tb4b4b4;
Tff7b72let Te6edf3requestVars Tff7b72= Tb4b4b4{Tb4b4b4}Tb4b4b4;
Tff7b72let Te6edf3foundAll Tff7b72= Tff7b72falseTb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3pTb4b4b4.Te6edf3fields Tff7b72&& Te6edf3pTb4b4b4.Te6edf3fieldsTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72for Tb4b4b4(Tff7b72const Te6edf3f Tff7b72of Te6edf3pTb4b4b4.Te6edf3fieldsTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3f Tff7b72=== Ta5d6ff"*"Tb4b4b4) Tb4b4b4{
T8b949e// submit all fields
Te6edf3foundAll Tff7b72= Tff7b72trueTb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3fTb4b4b4.Te6edf3includesTb4b4b4(Ta5d6ff"="Tb4b4b4)Tb4b4b4) Tb4b4b4{
T8b949e// this is a request variable (key=value)
Tff7b72const Tb4b4b4[Te6edf3kTb4b4b4, Te6edf3vTb4b4b4] Tff7b72= Te6edf3fTb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff"="Tb4b4b4)Tb4b4b4;
Te6edf3requestVarsTb4b4b4[Te6edf3kTb4b4b4] Tff7b72= Te6edf3vTb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
T8b949e// this is a field name to submit
Te6edf3fieldsToSubmitTb4b4b4.Te6edf3pushTb4b4b4(Te6edf3fTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72let Te6edf3fieldStr Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3foundAllTb4b4b4) Tb4b4b4{
T8b949e// if '*' was found, submit all fields
Te6edf3fieldStr Tff7b72= Ta5d6ff"*"Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3fieldStr Tff7b72= Te6edf3fieldsToSubmitTb4b4b4.Te6edf3joinTb4b4b4(Ta5d6ff"|"Tb4b4b4)Tb4b4b4;
Tb4b4b4}

T8b949e// append request variables directly to the directURL as query parameters
Tff7b72const Te6edf3varEntries Tff7b72= Tffa657ObjectTb4b4b4.Te6edf3entriesTb4b4b4(Te6edf3requestVarsTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3varEntriesTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3queryString Tff7b72= Te6edf3varEntriesTb4b4b4.Te6edf3mapTb4b4b4(Tb4b4b4(Tb4b4b4[Te6edf3kTb4b4b4, Te6edf3vTb4b4b4]Tb4b4b4) Tb4b4b4=> Ta5d6ff`Tffd700${Te6edf3kTffd700}Ta5d6ff=Tffd700${Te6edf3vTffd700}Ta5d6ff`Tb4b4b4)Tb4b4b4.Te6edf3joinTb4b4b4(Ta5d6ff"|"Tb4b4b4)Tb4b4b4;

Te6edf3directURL Tff7b72+= Te6edf3directURLTb4b4b4.Te6edf3includesTb4b4b4(Ta5d6ff"`"Tb4b4b4) Tff7b72? Ta5d6ff`Ta5d6ff|Tffd700${Te6edf3queryStringTffd700}Ta5d6ff` Tff7b72: Ta5d6ff`Ta5d6ff\`Tffd700${Te6edf3queryStringTffd700}Ta5d6ff`Tb4b4b4;
Tb4b4b4}

Te6edf3aTb4b4b4.Te6edf3setAttributeTb4b4b4(
Ta5d6ff"onclick"Tb4b4b4,
Ta5d6ff`Ta5d6ffevent.preventDefault(); onNodePageUrlClick('Tffd700${Te6edf3directURLTffd700}Ta5d6ff', 'Tffd700${Te6edf3fieldStrTffd700}Ta5d6ff', false, false)Ta5d6ff`
Tb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
T8b949e// no fields or request variables, just handle the direct URL
Te6edf3aTb4b4b4.Te6edf3setAttributeTb4b4b4(
Ta5d6ff"onclick"Tb4b4b4,
Ta5d6ff`Ta5d6ffevent.preventDefault(); onNodePageUrlClick('Tffd700${Te6edf3directURLTffd700}Ta5d6ff', null, false, false)Ta5d6ff`
Tb4b4b4)Tb4b4b4;
Tb4b4b4}

Te6edf3aTb4b4b4.Te6edf3textContent Tff7b72= Te6edf3pTb4b4b4.Te6edf3labelTb4b4b4;
Tff7b72thisTb4b4b4.Te6edf3applyStyleToElementTb4b4b4(Te6edf3aTb4b4b4, Tff7b72thisTb4b4b4.Te6edf3styleFromStateTb4b4b4(Te6edf3pTb4b4b4.Te6edf3styleTb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3containerTb4b4b4.Te6edf3appendChildTb4b4b4(Te6edf3aTb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}

Te6edf3flushSpanTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}

Te6edf3stylesEqualTb4b4b4(Te6edf3s1Tb4b4b4, Te6edf3s2Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3s1 Tff7b72&& Tff7b72!Te6edf3s2Tb4b4b4) Tff7b72return Tff7b72trueTb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3s1 Tff7b72|| Tff7b72!Te6edf3s2Tb4b4b4) Tff7b72return Tff7b72falseTb4b4b4;
Tff7b72return Tb4b4b4(
Te6edf3s1Tb4b4b4.Te6edf3fg Tff7b72=== Te6edf3s2Tb4b4b4.Te6edf3fg Tff7b72&&
Te6edf3s1Tb4b4b4.Te6edf3bg Tff7b72=== Te6edf3s2Tb4b4b4.Te6edf3bg Tff7b72&&
Te6edf3s1Tb4b4b4.Te6edf3bold Tff7b72=== Te6edf3s2Tb4b4b4.Te6edf3bold Tff7b72&&
Te6edf3s1Tb4b4b4.Te6edf3underline Tff7b72=== Te6edf3s2Tb4b4b4.Te6edf3underline Tff7b72&&
Te6edf3s1Tb4b4b4.Te6edf3italic Tff7b72=== Te6edf3s2Tb4b4b4.Te6edf3italic
Tb4b4b4)Tb4b4b4;
Tb4b4b4}

Te6edf3styleFromStateTb4b4b4(Te6edf3stateStyleTb4b4b4) Tb4b4b4{
T8b949e// stateStyle is a name of a style or a style object
T8b949e// in this code, p.style is actually a style name. j,ust return that
Tff7b72return Te6edf3stateStyleTb4b4b4;
Tb4b4b4}

Te6edf3applyStyleToElementTb4b4b4(Te6edf3elTb4b4b4, Te6edf3styleTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3styleTb4b4b4) Tff7b72returnTb4b4b4;
T8b949e// convert style fg/bg to colors
Tff7b72let Te6edf3fgColor Tff7b72= Tff7b72thisTb4b4b4.Te6edf3colorToCssTb4b4b4(Te6edf3styleTb4b4b4.Te6edf3fgTb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3bgColor Tff7b72= Tff7b72thisTb4b4b4.Te6edf3colorToCssTb4b4b4(Te6edf3styleTb4b4b4.Te6edf3bgTb4b4b4)Tb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3fgColor Tff7b72&& Te6edf3fgColor Tff7b72!== Ta5d6ff"default"Tb4b4b4) Tb4b4b4{
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3color Tff7b72= Te6edf3fgColorTb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3bgColor Tff7b72&& Te6edf3bgColor Tff7b72!== Ta5d6ff"default"Tb4b4b4) Tb4b4b4{
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3backgroundColor Tff7b72= Te6edf3bgColorTb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3boldTb4b4b4) Tb4b4b4{
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3fontWeight Tff7b72= Ta5d6ff"bold"Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3underlineTb4b4b4) Tb4b4b4{
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3textDecoration Tff7b72= Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3textDecoration Tff7b72? Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3textDecoration Tff7b72+ Ta5d6ff" underline" Tff7b72: Ta5d6ff"underline"Tb4b4b4;
Tb4b4b4}
Tff7b72if Tb4b4b4(Te6edf3styleTb4b4b4.Te6edf3italicTb4b4b4) Tb4b4b4{
Te6edf3elTb4b4b4.Te6edf3styleTb4b4b4.Te6edf3fontStyle Tff7b72= Ta5d6ff"italic"Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Te6edf3colorToCssTb4b4b4(Te6edf3cTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3c Tff7b72|| Te6edf3c Tff7b72=== Ta5d6ff"default"Tb4b4b4) Tff7b72return Tff7b72nullTb4b4b4;
T8b949e// if 3 hex chars (like '222') => expand to #222
Tff7b72if Tb4b4b4(Te6edf3cTb4b4b4.Te6edf3length Tff7b72=== T79c0ff3 Tff7b72&& Ta5d6ff/^[0-9a-fA-F]{3}$/Tb4b4b4.Te6edf3testTb4b4b4(Te6edf3cTb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72return Ta5d6ff"#" Tff7b72+ Te6edf3cTb4b4b4;
Tb4b4b4}
T8b949e// If 6 hex chars
Tff7b72if Tb4b4b4(Te6edf3cTb4b4b4.Te6edf3length Tff7b72=== T79c0ff6 Tff7b72&& Ta5d6ff/^[0-9a-fA-F]{6}$/Tb4b4b4.Te6edf3testTb4b4b4(Te6edf3cTb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72return Ta5d6ff"#" Tff7b72+ Te6edf3cTb4b4b4;
Tb4b4b4}
T8b949e// If grayscale 'gxx'
Tff7b72if Tb4b4b4(Te6edf3cTb4b4b4.Te6edf3length Tff7b72=== T79c0ff3 Tff7b72&& Te6edf3cTb4b4b4[T79c0ff0Tb4b4b4] Tff7b72=== Ta5d6ff"g"Tb4b4b4) Tb4b4b4{
T8b949e// treat xx as a number and map to gray
Tff7b72let Te6edf3val Tff7b72= Tffa657parseIntTb4b4b4(Te6edf3cTb4b4b4.Te6edf3sliceTb4b4b4(T79c0ff1Tb4b4b4)Tb4b4b4, T79c0ff10Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tffa657isNaNTb4b4b4(Te6edf3valTb4b4b4)Tb4b4b4) Te6edf3val Tff7b72= T79c0ff50Tb4b4b4;
T8b949e// map 0-99 scale to a gray hex
Tff7b72let Te6edf3h Tff7b72= Tffa657MathTb4b4b4.Te6edf3floorTb4b4b4(Te6edf3val Tff7b72* T79c0ff2.55Tb4b4b4)
Tb4b4b4.Te6edf3toStringTb4b4b4(T79c0ff16Tb4b4b4)
Tb4b4b4.Te6edf3padStartTb4b4b4(T79c0ff2Tb4b4b4, Ta5d6ff"0"Tb4b4b4)Tb4b4b4;
Tff7b72return Ta5d6ff"#" Tff7b72+ Te6edf3h Tff7b72+ Te6edf3h Tff7b72+ Te6edf3hTb4b4b4;
Tb4b4b4}

T8b949e// fallback: just return a known CSS color or tailwind class if not known
Tff7b72return Tff7b72nullTb4b4b4;
Tb4b4b4}

Te6edf3makeOutputTb4b4b4(Te6edf3stateTb4b4b4, Te6edf3lineTb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3stateTb4b4b4.Te6edf3literalTb4b4b4) Tb4b4b4{
T8b949e// literal mode: output as is, except if `= line
Tff7b72if Tb4b4b4(Te6edf3line Tff7b72=== Ta5d6ff"\\`="Tb4b4b4) Tb4b4b4{
Te6edf3line Tff7b72= Ta5d6ff"`="Tb4b4b4;
Tb4b4b4}
Tff7b72return Tb4b4b4[Tb4b4b4[Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4, Te6edf3lineTb4b4b4]Tb4b4b4]Tb4b4b4;
Tb4b4b4}

Tff7b72let Te6edf3output Tff7b72= Tb4b4b4[Tb4b4b4]Tb4b4b4;
Tff7b72let Te6edf3part Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72let Te6edf3mode Tff7b72= Ta5d6ff"text"Tb4b4b4;
Tff7b72let Te6edf3escape Tff7b72= Tff7b72falseTb4b4b4;
Tff7b72let Te6edf3skip Tff7b72= T79c0ff0Tb4b4b4;
Tff7b72let Te6edf3i Tff7b72= T79c0ff0Tb4b4b4;
Tff7b72while Tb4b4b4(Te6edf3i Tff7b72< Te6edf3lineTb4b4b4.Te6edf3lengthTb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3c Tff7b72= Te6edf3lineTb4b4b4[Te6edf3iTb4b4b4]Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3skip Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3skipTff7b72--Tb4b4b4;
Te6edf3iTff7b72++Tb4b4b4;
Tff7b72continueTb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3mode Tff7b72=== Ta5d6ff"formatting"Tb4b4b4) Tb4b4b4{
T8b949e// Handle formatting commands
Tff7b72switch Tb4b4b4(Te6edf3cTb4b4b4) Tb4b4b4{
Tff7b72case Ta5d6ff"_"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3underline Tff7b72= Tff7b72!Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3underlineTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"!"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3bold Tff7b72= Tff7b72!Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3boldTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"*"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3italic Tff7b72= Tff7b72!Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3italicTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"F"Tff7b72:
T8b949e// next 3 chars = fg color
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4.Te6edf3length Tff7b72>= Te6edf3i Tff7b72+ T79c0ff4Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3color Tff7b72= Te6edf3lineTb4b4b4.Te6edf3substrTb4b4b4(Te6edf3i Tff7b72+ T79c0ff1Tb4b4b4, T79c0ff3Tb4b4b4)Tb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3fg_color Tff7b72= Te6edf3colorTb4b4b4;
Te6edf3skip Tff7b72= T79c0ff3Tb4b4b4;
Tb4b4b4}
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"f"Tff7b72:
T8b949e// reset fg
Te6edf3stateTb4b4b4.Te6edf3fg_color Tff7b72= Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4.Te6edf3plainTb4b4b4.Te6edf3fgTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"B"Tff7b72:
Tff7b72if Tb4b4b4(Te6edf3lineTb4b4b4.Te6edf3length Tff7b72>= Te6edf3i Tff7b72+ T79c0ff4Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3color Tff7b72= Te6edf3lineTb4b4b4.Te6edf3substrTb4b4b4(Te6edf3i Tff7b72+ T79c0ff1Tb4b4b4, T79c0ff3Tb4b4b4)Tb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3bg_color Tff7b72= Te6edf3colorTb4b4b4;
Te6edf3skip Tff7b72= T79c0ff3Tb4b4b4;
Tb4b4b4}
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"b"Tff7b72:
T8b949e// reset bg
Te6edf3stateTb4b4b4.Te6edf3bg_color Tff7b72= Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BGTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"`"Tff7b72:
T8b949e// reset all formatting
Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3bold Tff7b72= Tff7b72falseTb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3underline Tff7b72= Tff7b72falseTb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3formattingTb4b4b4.Te6edf3italic Tff7b72= Tff7b72falseTb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3fg_color Tff7b72= Tff7b72thisTb4b4b4.Te6edf3SELECTED_STYLESTb4b4b4.Te6edf3plainTb4b4b4.Te6edf3fgTb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3bg_color Tff7b72= Tff7b72thisTb4b4b4.Te6edf3DEFAULT_BGTb4b4b4;
Te6edf3stateTb4b4b4.Te6edf3align Tff7b72= Te6edf3stateTb4b4b4.Te6edf3default_alignTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"c"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3align Tff7b72= Te6edf3stateTb4b4b4.Te6edf3align Tff7b72=== Ta5d6ff"center" Tff7b72? Te6edf3stateTb4b4b4.Te6edf3default_align Tff7b72: Ta5d6ff"center"Tb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"l"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3align Tff7b72= Te6edf3stateTb4b4b4.Te6edf3align Tff7b72=== Ta5d6ff"left" Tff7b72? Te6edf3stateTb4b4b4.Te6edf3default_align Tff7b72: Ta5d6ff"left"Tb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"r"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3align Tff7b72= Te6edf3stateTb4b4b4.Te6edf3align Tff7b72=== Ta5d6ff"right" Tff7b72? Te6edf3stateTb4b4b4.Te6edf3default_align Tff7b72: Ta5d6ff"right"Tb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"a"Tff7b72:
Te6edf3stateTb4b4b4.Te6edf3align Tff7b72= Te6edf3stateTb4b4b4.Te6edf3default_alignTb4b4b4;
Tff7b72breakTb4b4b4;
Tff7b72case Ta5d6ff"<"Tff7b72:
T8b949e// Flush current text first
Tff7b72if Tb4b4b4(Te6edf3partTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3outputTb4b4b4.Te6edf3pushTb4b4b4(Tb4b4b4[Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4, Te6edf3partTb4b4b4]Tb4b4b4)Tb4b4b4;
Te6edf3part Tff7b72= Ta5d6ff""Tb4b4b4;
Tb4b4b4}
Tb4b4b4{
Tff7b72let Te6edf3fieldData Tff7b72= Tff7b72thisTb4b4b4.Te6edf3parseFieldTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3iTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3fieldDataTb4b4b4) Tb4b4b4{
Te6edf3outputTb4b4b4.Te6edf3pushTb4b4b4(Te6edf3fieldDataTb4b4b4.Te6edf3objTb4b4b4)Tb4b4b4;
Te6edf3i Tff7b72+= Te6edf3fieldDataTb4b4b4.Te6edf3skipTb4b4b4;
Tff7b72continueTb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tff7b72breakTb4b4b4;

Tff7b72case Ta5d6ff"["Tff7b72:
T8b949e// flush current text first
Tff7b72if Tb4b4b4(Te6edf3partTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3outputTb4b4b4.Te6edf3pushTb4b4b4(Tb4b4b4[Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4, Te6edf3partTb4b4b4]Tb4b4b4)Tb4b4b4;
Te6edf3part Tff7b72= Ta5d6ff""Tb4b4b4;
Tb4b4b4}
Tb4b4b4{
Tff7b72let Te6edf3linkData Tff7b72= Tff7b72thisTb4b4b4.Te6edf3parseLinkTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3iTb4b4b4, Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3linkDataTb4b4b4) Tb4b4b4{
Te6edf3outputTb4b4b4.Te6edf3pushTb4b4b4(Te6edf3linkDataTb4b4b4.Te6edf3objTb4b4b4)Tb4b4b4;
T8b949e// mode = "text";
Te6edf3i Tff7b72+= Te6edf3linkDataTb4b4b4.Te6edf3skipTb4b4b4;
Tff7b72continueTb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tff7b72breakTb4b4b4;

Tff7b72defaultTff7b72:
T8b949e// unknown formatting char, ignore
Tff7b72breakTb4b4b4;
Tb4b4b4}
Te6edf3mode Tff7b72= Ta5d6ff"text"Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3partTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
T8b949e// no flush needed, no text added
Tb4b4b4}
Tb4b4b4} Tff7b72else Tb4b4b4{
T8b949e// mode === "text"
Tff7b72if Tb4b4b4(Te6edf3c Tff7b72=== Ta5d6ff"\\"Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3escapeTb4b4b4) Tb4b4b4{
T8b949e// was escaped backslash
Te6edf3part Tff7b72+= Te6edf3cTb4b4b4;
Te6edf3escape Tff7b72= Tff7b72falseTb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3escape Tff7b72= Tff7b72trueTb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3c Tff7b72=== Ta5d6ff"`"Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3escapeTb4b4b4) Tb4b4b4{
T8b949e// just a literal backtick
Te6edf3part Tff7b72+= Te6edf3cTb4b4b4;
Te6edf3escape Tff7b72= Tff7b72falseTb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
T8b949e// switch to formatting mode
Tff7b72if Tb4b4b4(Te6edf3partTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3outputTb4b4b4.Te6edf3pushTb4b4b4(Tb4b4b4[Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4, Te6edf3partTb4b4b4]Tb4b4b4)Tb4b4b4;
Te6edf3part Tff7b72= Ta5d6ff""Tb4b4b4;
Tb4b4b4}
Te6edf3mode Tff7b72= Ta5d6ff"formatting"Tb4b4b4;
Tb4b4b4}
Tb4b4b4} Tff7b72else Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3escapeTb4b4b4) Tb4b4b4{
Te6edf3part Tff7b72+= Ta5d6ff"\\"Tb4b4b4;
Te6edf3escape Tff7b72= Tff7b72falseTb4b4b4;
Tb4b4b4}
Te6edf3part Tff7b72+= Te6edf3cTb4b4b4;
Tb4b4b4}
Tb4b4b4}

Te6edf3iTff7b72++Tb4b4b4;
Tb4b4b4}

T8b949e// end of line
Tff7b72if Tb4b4b4(Te6edf3partTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Te6edf3outputTb4b4b4.Te6edf3pushTb4b4b4(Tb4b4b4[Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4, Te6edf3partTb4b4b4]Tb4b4b4)Tb4b4b4;
Tb4b4b4}

Tff7b72return Te6edf3outputTb4b4b4.Te6edf3length Tff7b72> T79c0ff0 Tff7b72? Te6edf3output Tff7b72: Tff7b72nullTb4b4b4;
Tb4b4b4}

Te6edf3parseFieldTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3startIndexTb4b4b4, Te6edf3stateTb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3field_start Tff7b72= Te6edf3startIndex Tff7b72+ T79c0ff1Tb4b4b4;
Tff7b72let Te6edf3backtick_pos Tff7b72= Te6edf3lineTb4b4b4.Te6edf3indexOfTb4b4b4(Ta5d6ff"`"Tb4b4b4, Te6edf3field_startTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3backtick_pos Tff7b72=== Tff7b72-T79c0ff1Tb4b4b4) Tff7b72return Tff7b72nullTb4b4b4;

Tff7b72let Te6edf3field_content Tff7b72= Te6edf3lineTb4b4b4.Te6edf3substringTb4b4b4(Te6edf3field_startTb4b4b4, Te6edf3backtick_posTb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3field_masked Tff7b72= Tff7b72falseTb4b4b4;
Tff7b72let Te6edf3field_width Tff7b72= T79c0ff24Tb4b4b4;
Tff7b72let Te6edf3field_type Tff7b72= Ta5d6ff"field"Tb4b4b4;
Tff7b72let Te6edf3field_name Tff7b72= Te6edf3field_contentTb4b4b4;
Tff7b72let Te6edf3field_value Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72let Te6edf3field_prechecked Tff7b72= Tff7b72falseTb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3field_contentTb4b4b4.Te6edf3includesTb4b4b4(Ta5d6ff"|"Tb4b4b4)Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3f_components Tff7b72= Te6edf3field_contentTb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff"|"Tb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3field_flags Tff7b72= Te6edf3f_componentsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4;
Te6edf3field_name Tff7b72= Te6edf3f_componentsTb4b4b4[T79c0ff1Tb4b4b4]Tb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3field_flagsTb4b4b4.Te6edf3includesTb4b4b4(Ta5d6ff"^"Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3field_type Tff7b72= Ta5d6ff"radio"Tb4b4b4;
Te6edf3field_flags Tff7b72= Te6edf3field_flagsTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"^"Tb4b4b4, Ta5d6ff""Tb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3field_flagsTb4b4b4.Te6edf3includesTb4b4b4(Ta5d6ff"?"Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3field_type Tff7b72= Ta5d6ff"checkbox"Tb4b4b4;
Te6edf3field_flags Tff7b72= Te6edf3field_flagsTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"?"Tb4b4b4, Ta5d6ff""Tb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3field_flagsTb4b4b4.Te6edf3includesTb4b4b4(Ta5d6ff"!"Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3field_masked Tff7b72= Tff7b72trueTb4b4b4;
Te6edf3field_flags Tff7b72= Te6edf3field_flagsTb4b4b4.Te6edf3replaceTb4b4b4(Ta5d6ff"!"Tb4b4b4, Ta5d6ff""Tb4b4b4)Tb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3field_flagsTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3w Tff7b72= Tffa657parseIntTb4b4b4(Te6edf3field_flagsTb4b4b4, T79c0ff10Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Tff7b72!Tffa657isNaNTb4b4b4(Te6edf3wTb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3field_width Tff7b72= Tffa657MathTb4b4b4.Te6edf3minTb4b4b4(Te6edf3wTb4b4b4, T79c0ff256Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3f_componentsTb4b4b4.Te6edf3length Tff7b72> T79c0ff2Tb4b4b4) Tb4b4b4{
Te6edf3field_value Tff7b72= Te6edf3f_componentsTb4b4b4[T79c0ff2Tb4b4b4]Tb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3f_componentsTb4b4b4.Te6edf3length Tff7b72> T79c0ff3Tb4b4b4) Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3f_componentsTb4b4b4[T79c0ff3Tb4b4b4] Tff7b72=== Ta5d6ff"*"Tb4b4b4) Tb4b4b4{
Te6edf3field_prechecked Tff7b72= Tff7b72trueTb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}

Tff7b72let Te6edf3field_end Tff7b72= Te6edf3lineTb4b4b4.Te6edf3indexOfTb4b4b4(Ta5d6ff">"Tb4b4b4, Te6edf3backtick_posTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3field_end Tff7b72=== Tff7b72-T79c0ff1Tb4b4b4) Tff7b72return Tff7b72nullTb4b4b4;

Tff7b72let Te6edf3field_data Tff7b72= Te6edf3lineTb4b4b4.Te6edf3substringTb4b4b4(Te6edf3backtick_pos Tff7b72+ T79c0ff1Tb4b4b4, Te6edf3field_endTb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3style Tff7b72= Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4;

Tff7b72let Te6edf3obj Tff7b72= Tff7b72nullTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3field_type Tff7b72=== Ta5d6ff"checkbox" Tff7b72|| Te6edf3field_type Tff7b72=== Ta5d6ff"radio"Tb4b4b4) Tb4b4b4{
Te6edf3obj Tff7b72= Tb4b4b4{
Te6edf3typeTff7b72: Te6edf3field_typeTb4b4b4,
Te6edf3nameTff7b72: Te6edf3field_nameTb4b4b4,
Te6edf3valueTff7b72: Te6edf3field_value Tff7b72|| Te6edf3field_dataTb4b4b4,
Te6edf3labelTff7b72: Te6edf3field_dataTb4b4b4,
Te6edf3precheckedTff7b72: Te6edf3field_precheckedTb4b4b4,
Te6edf3styleTff7b72: Te6edf3styleTb4b4b4,
Tb4b4b4}Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3obj Tff7b72= Tb4b4b4{
Te6edf3typeTff7b72: Ta5d6ff"field"Tb4b4b4,
Te6edf3nameTff7b72: Te6edf3field_nameTb4b4b4,
Te6edf3widthTff7b72: Te6edf3field_widthTb4b4b4,
Te6edf3maskedTff7b72: Te6edf3field_maskedTb4b4b4,
Te6edf3dataTff7b72: Te6edf3field_dataTb4b4b4,
Te6edf3styleTff7b72: Te6edf3styleTb4b4b4,
Tb4b4b4}Tb4b4b4;
Tb4b4b4}

Tff7b72let Te6edf3skip Tff7b72= Te6edf3field_end Tff7b72- Te6edf3startIndex Tff7b72+ T79c0ff2Tb4b4b4;
Tff7b72return Tb4b4b4{ Te6edf3objTff7b72: Te6edf3objTb4b4b4, Te6edf3skipTff7b72: Te6edf3skip Tb4b4b4}Tb4b4b4;
Tb4b4b4}

Te6edf3parseLinkTb4b4b4(Te6edf3lineTb4b4b4, Te6edf3startIndexTb4b4b4, Te6edf3stateTb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3endpos Tff7b72= Te6edf3lineTb4b4b4.Te6edf3indexOfTb4b4b4(Ta5d6ff"]"Tb4b4b4, Te6edf3startIndexTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3endpos Tff7b72=== Tff7b72-T79c0ff1Tb4b4b4) Tff7b72return Tff7b72nullTb4b4b4;

Tff7b72let Te6edf3link_data Tff7b72= Te6edf3lineTb4b4b4.Te6edf3substringTb4b4b4(Te6edf3startIndex Tff7b72+ T79c0ff1Tb4b4b4, Te6edf3endposTb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3link_components Tff7b72= Te6edf3link_dataTb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff"`"Tb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3link_label Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72let Te6edf3link_url Tff7b72= Ta5d6ff""Tb4b4b4;
Tff7b72let Te6edf3link_fields Tff7b72= Ta5d6ff""Tb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3link_componentsTb4b4b4.Te6edf3length Tff7b72=== T79c0ff1Tb4b4b4) Tb4b4b4{
Te6edf3link_label Tff7b72= Ta5d6ff""Tb4b4b4;
Te6edf3link_url Tff7b72= Te6edf3link_dataTb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3link_componentsTb4b4b4.Te6edf3length Tff7b72=== T79c0ff2Tb4b4b4) Tb4b4b4{
Te6edf3link_label Tff7b72= Te6edf3link_componentsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4;
Te6edf3link_url Tff7b72= Te6edf3link_componentsTb4b4b4[T79c0ff1Tb4b4b4]Tb4b4b4;
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3link_componentsTb4b4b4.Te6edf3length Tff7b72=== T79c0ff3Tb4b4b4) Tb4b4b4{
Te6edf3link_label Tff7b72= Te6edf3link_componentsTb4b4b4[T79c0ff0Tb4b4b4]Tb4b4b4;
Te6edf3link_url Tff7b72= Te6edf3link_componentsTb4b4b4[T79c0ff1Tb4b4b4]Tb4b4b4;
Te6edf3link_fields Tff7b72= Te6edf3link_componentsTb4b4b4[T79c0ff2Tb4b4b4]Tb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3link_urlTb4b4b4.Te6edf3length Tff7b72=== T79c0ff0Tb4b4b4) Tb4b4b4{
Tff7b72return Tff7b72nullTb4b4b4;
Tb4b4b4}

Tff7b72if Tb4b4b4(Te6edf3link_label Tff7b72=== Ta5d6ff""Tb4b4b4) Tb4b4b4{
Te6edf3link_label Tff7b72= Te6edf3link_urlTb4b4b4;
Tb4b4b4}

T8b949e// format the URL
Te6edf3link_url Tff7b72= Te6edf3MicronParserTb4b4b4.Te6edf3formatNomadnetworkUrlTb4b4b4(Te6edf3link_urlTb4b4b4)Tb4b4b4;

Tff7b72let Te6edf3style Tff7b72= Tff7b72thisTb4b4b4.Te6edf3stateToStyleTb4b4b4(Te6edf3stateTb4b4b4)Tb4b4b4;
Tff7b72let Te6edf3obj Tff7b72= Tb4b4b4{
Te6edf3typeTff7b72: Ta5d6ff"link"Tb4b4b4,
Te6edf3urlTff7b72: Te6edf3link_urlTb4b4b4,
Te6edf3labelTff7b72: Te6edf3link_labelTb4b4b4,
Te6edf3fieldsTff7b72: Te6edf3link_fields Tff7b72? Te6edf3link_fieldsTb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff"|"Tb4b4b4) Tff7b72: Tb4b4b4[Tb4b4b4]Tb4b4b4,
Te6edf3styleTff7b72: Te6edf3styleTb4b4b4,
Tb4b4b4}Tb4b4b4;

Tff7b72let Te6edf3skip Tff7b72= Te6edf3endpos Tff7b72- Te6edf3startIndex Tff7b72+ T79c0ff2Tb4b4b4;
Tff7b72return Tb4b4b4{ Te6edf3objTff7b72: Te6edf3objTb4b4b4, Te6edf3skipTff7b72: Te6edf3skip Tb4b4b4}Tb4b4b4;
Tb4b4b4}
Tb4b4b4}

Tff7b72export Tff7b72default Te6edf3MicronParserTb4b4b4;


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────